Skip to content

Conversation

@joehan
Copy link
Member

@joehan joehan commented Jan 8, 2026

Slightly more polished draft of the firestore-basics skill. It covers:

  • Provisioning a DB and setting up your firebase.json, rules, and index filkes
  • Setting up SDKs on each platform, and a bunch of usage examples
  • A bunch of usage examples of security rules common patterns

TODOs

  • Add compatibility field that tells agents to instal the CLI if possible
  • Add more in depth examples to security rules
  • Add deployment section to provisioning.md
  • Test and iterate - can we reduce token usage by putting the most basic CUJs directly in SKILL.md?

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @joehan, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces the initial draft of a new 'firestore-basics' skill. Its primary goal is to serve as a comprehensive resource for users looking to understand and implement Cloud Firestore, covering essential aspects from initial setup and configuration to securing data with rules and integrating the SDK into applications.

Highlights

  • New Firestore Basics Skill: Introduced a new skill named firestore-basics which serves as a comprehensive guide for Cloud Firestore.
  • Provisioning Guide: Added detailed documentation for setting up Cloud Firestore, covering Firebase CLI initialization, firebase.json configuration, and local emulator usage.
  • Security Rules Documentation: Provided explanations for Firestore Security Rules, including basic structure, common patterns (locked, test, auth required, user-specific), and deployment instructions.
  • SDK Usage Examples: Included guidance and code snippets for initializing and using the Firestore Web Modular SDK, connecting to the emulator, and performing basic data operations like adding, reading, and listening for real-time updates.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new 'firestore-basics' skill, providing a foundational guide to Cloud Firestore. The skill is well-structured into provisioning, security rules, and SDK usage. My review includes suggestions to enhance the examples and documentation to make them more practical for users. Specifically, I've recommended improving how data is logged in the SDK examples, adding more advanced security rule patterns like data validation and separated read/write access, and including a section on deploying Firestore configurations. These suggestions align with the TODOs mentioned in the pull request description and aim to make the skill more complete.

@joehan joehan marked this pull request as ready for review January 9, 2026 17:30
@joehan
Copy link
Member Author

joehan commented Jan 9, 2026

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new 'firestore-basics' skill, providing comprehensive documentation and code examples for web, Android, and iOS. The content is well-structured and covers key aspects of Firestore, including provisioning, security rules, SDK usage, and indexes. My review focuses on improving the correctness and clarity of the code snippets and documentation. I've identified several issues, such as incorrect API usage in the Android SDK examples, unsafe coding practices like force-unwrapping in Swift, and formatting problems in the markdown files. I've provided specific suggestions to fix these issues, which will enhance the quality and reliability of the skill for developers.

@joehan joehan requested a review from MichaelDoyle January 13, 2026 19:40
@joehan joehan changed the base branch from main to launch.skills January 13, 2026 19:40
@MichaelDoyle
Copy link
Member

@joehan Are the pricing, prompt, and guide changes related to the new skill(s) or are these separate changes? At first glance they seem out of place here. Unless they are just coming from syncing to main? Maybe just do that separately?


## Manual Initialization

For non-interactive environments (like AI agents), it is recommended to manually create the necessary configuration files instead of using `firebase init`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems a bit ambiguous. Maybe something like:

Suggested change
For non-interactive environments (like AI agents), it is recommended to manually create the necessary configuration files instead of using `firebase init`.
Initialize the following firebase configuration files manually. Do not use `firebase init` because <reason>.

(insert appropriate <reason>)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the reason btw? :)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good call. is 'becuase it expects interactive inputs, and those will confuse you Mr. AI agent'

@joehan
Copy link
Member Author

joehan commented Jan 15, 2026

@joehan Are the pricing, prompt, and guide changes related to the new skill(s) or are these separate changes? At first glance they seem out of place here. Unless they are just coming from syncing to main? Maybe just do that separately?

Yep, those are just from syncing to main (and forgetting to sync launch.skills) - will get the launch branch up to date before merging

@joehan joehan merged commit bb01d4b into launch.skills Jan 15, 2026
23 checks passed
@joehan joehan deleted the jh-skills branch January 15, 2026 00:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants